/**
 * $Id: IPersonnelService.java 6 2011-09-14 00:18:07Z adriftrock@gmail.com $
 */

package com.swehr.server.services;

import com.swehr.server.models.Organization;
import com.swehr.server.models.Personnel;
import com.swehr.server.models.Position;
import com.swehr.server.models.ResultInfo;

import java.util.List;

/**
 * @author Rock Huang
 * @version 0.1
 */
public interface IPersonnelService {

    void add(Organization org);

    void update(Organization org);

    ResultInfo delete(int id);

    List<Organization> list();

    List<Personnel> listPsn();

    Organization signin(Organization org);

    ResultInfo batchSave(List<Organization> orgs);

    ResultInfo savePsns(List<Personnel> emps);

    List<Position> listPosByOrg(String orgId);

    ResultInfo savePos(List<Position> pos);

    List<Personnel> listPsnByOrg(String oid);

    List<Personnel> listPsnByPos(String pid);

    List<Organization> listSubOrg(String id);

    Organization getOrgRoot(String id);
}
